package demo1224.pm;

import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;

/*
字符流,它只能对文本文件进行读写操作.

字节流:
字节输入流:
InputStream抽象类:
FileInputStream 从文件系统中的某个文件中获得输入字节
FileInputStream 用于读取诸如图像数据之类的原始字节流。
要读取字符流，请考虑使用 FileReader。

FileInputStream字节输入流:一次读取一个字节.可以用来读取图片,文件等.
构造方法:
public FileInputStream(String filename);
public FileInputStream(File file);
成员方法:
1.public int read();
一次读取一个字节.返回的是读取的字节.读取到文件末尾,返回-1.

2.public int read(byte[] bs);
把一次最多读取bs.length个字节到的字节存放到字节数组bs中,
返回的是存放在字节数组中的个数.读取到文件末尾,返回-1.

3.public void close();
 */
public class Demo_03 {
    public static void main(String[] args) {
        FileInputStream fis = null;
        try {
             fis = new FileInputStream("a.txt");
            int read;
            byte[] bs = new byte[1024];
            while ((read=fis.read(bs))!=-1){
                System.out.print(new String(bs,0,read));
            }
        } catch (FileNotFoundException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        }finally {
            if (fis!=null){
                try {
                    fis.close();
                } catch (IOException e) {
                    e.printStackTrace();
                }
            }
        }
    }
}
